package org.zty.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import sun.security.provider.MD5;

public class MD5Security {
	public static String getMd5Str(String str){
		 try {  
            MessageDigest md = MessageDigest.getInstance("MD5");  
            md.update(str.getBytes());  
            byte b[] = md.digest();  
  
            int i;  
  
            StringBuffer buf = new StringBuffer("");  
            for (int offset = 0; offset < b.length; offset++) {  
                i = b[offset];  
                if (i < 0)  
                    i += 256;  
                if (i < 16)  
                    buf.append("0");  
                buf.append(Integer.toHexString(i));  
            }  
            //32位加密  
            return buf.toString();  
            // 16位的加密  
            //return buf.toString().substring(8, 24);  
        } catch (NoSuchAlgorithmException e) {  
            e.printStackTrace();  
            return null;  
        }  
	}
	
	public static boolean isEqual(String nomarlStr, String compareMD5str){
		if(nomarlStr==null||compareMD5str==null){
			return false;
		}
		if(getMd5Str(nomarlStr).equals(compareMD5str)){
			return true;
		}
		return false;
		
	}
	
	public static void main(String[] args) {
		System.out.println(getMd5Str("123321"));
	}
}
